def internal_mix_1():
  """Internal call DN1 to DN2, abnormal release DN1"""
  SipPhone1.MakeCall(DN2)
  SipPhone1.ReleaseCall()

def internal_mix_2():
  """Internal call DN1 to DN2,  release DN1"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  SipPhone1.ReleaseCall()

def internal_mix_3():
  """Internal call DN1 to DN2,  release DN2"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.ReleaseCall()


def internal_mix_4():
  """Internal call DN1 to  DN2, two step transfer to DN3, release DN3"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone3.AnswerCall()
  DN2.CompleteTransfer()
  SipPhone3.ReleaseCall()


def internal_mix_5():
  """Internal call DN1 to  DN2, DN2 init transfer to DN3, release DN1, release DN2"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone1.ReleaseCall()
  DN2.ReleaseCall()
  
def internal_mix_6():
  """Internal call DN1 to  DN2, DN2 init transfer to DN3, release DN1, DN3 answer, release DN3"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone1.ReleaseCall()
  SipPhone3.AnswerCall()
  SipPhone3.ReleaseCall()  
  
def internal_mix_7():
  """Internal call DN1 to  DN2, DN1 init transfer to DN3, release DN2, DN3 answer, release DN3"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  SipPhone1.InitiateTransfer(DN3)
  DN2.ReleaseCall()
  SipPhone3.AnswerCall()
  SipPhone3.ReleaseCall()   

def internal_mix_8():
  """Internal call DN1 to  DN2, DN1 init transfer to DN3, DN2 answer, DN3 answer, release DN3, release DN2"""
  SipPhone1.MakeCall(DN2)
  SipPhone1.InitiateTransfer(DN3)
  DN2.AnswerCall()
  SipPhone3.AnswerCall()
  SipPhone3.ReleaseCall()  
  DN2.ReleaseCall()    

def internal_mix_9():
  """Internal call DN1 to  DN2, DN1 init transfer to DN3,  DN3 answer, DN2 answer, release DN3, release DN2"""
  SipPhone1.MakeCall(DN2)
  SipPhone1.InitiateTransfer(DN3)
  SipPhone3.AnswerCall()
  DN2.AnswerCall()
  SipPhone3.ReleaseCall()  
  DN2.ReleaseCall() 
  

def internal_mix_10():
  """Internal call DN1 to  DN2, two step transfer to DN3, abnormal release DN1"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN2.ReleaseCall()
  SipPhone1.ReleaseCall()

def internal_mix_11():
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone1.ReleaseCall()
  DN2.ReleaseCall()


def  internal_mix_12():
  """Internal call to  DN2, two step transfer to DN3, release DN3"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone3.AnswerCall()
  DN2.CompleteTransfer()
  SipPhone3.ReleaseCall()

def internal_mix_13():
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone3.AnswerCall()
  SipPhone1.ReleaseCall()
  SipPhone3.ReleaseCall()


def internal_mix_14():
  """Internal call DN1 to DN2, two step transfer to DN3, completed before consulted party answer"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN2.CompleteTransfer()
  SipPhone3.AnswerCall()
  SipPhone1.ReleaseCall()

def internal_mix_15():
  """Internal call, two step transfer to DN3, completed before consulted party answer, abnor"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  DN2.CompleteTransfer()
  SipPhone1.ReleaseCall()


def internal_mix_16():
  """something"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateTransfer(DN3)
  SipPhone3.AnswerCall()
  SipPhone1.ReleaseCall()
  DN2.InitiateTransfer(DN1)
  DN2.CompleteTransfer()
  SipPhone1.AnswerCall()
  SipPhone3.ReleaseCall()  

def internal_mix_17():
  """Internal call DN1 to DN2, internal conference to DN3, release DN1, DN2"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  SipPhone3.AnswerCall()
  DN2.CompleteConference()
  SipPhone1.ReleaseCall()
  DN2.ReleaseCall()

def internal_mix_18():
  """Internal call DN1 to DN2, DN2 cinit conference to DN3, abnorl release DN2, release DN1"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  DN2.ReleaseCall()
  SipPhone1.ReleaseCall()


def internal_mix_19():
  """Internal call DN1 to DN2, DN2 conference to DN3, completed before consulted party answer"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  DN2.CompleteConference()
  SipPhone3.AnswerCall()
  SipPhone1.ReleaseCall()
  DN2.ReleaseCall()

def internal_mix_20():
  """Internal call DN1 to DN2, DN2 conf to DN3, compl before cons. party answer, abnor. release DN2"""
  SipPhone1.MakeCall(DN2)
  DN2.AnswerCall()
  DN2.InitiateConference(DN3)
  DN2.CompleteConference()
  DN2.ReleaseCall()
  SipPhone3.AnswerCall()
  SipPhone1.ReleaseCall()